/*
 * basicCalculate v1.0 edit by json.xu.
 */
;(function(window, document, undefined) {
	//这里的函数不会暴露给外界
	function hideFun(){
		return "函数不会暴露给外界";
	}
	
	// 创建一个构造函数
	function basicPlugin(params) {
		//默认参数
		this.options = {
			callBack: null
		}

		//调用原型的初始化函数
		this.init();
	}

	// 构造函数的原型对象,这里的函数会暴露给作用域实例化的对象
	basicPlugin.prototype = {
		// 初始化函数
		init: function() {
			this.doSomething();

			this.bindListeners();
		},
		doSomething: function() {
			var self = this;
			//函数的具体实现
			console.log("函数的具体实现");
		},
		bindListeners: function() {
			var self = this;
			// 添加各种监听
			
			console.log(hideFun())
			
			// 伪监听开始
				//触发回调函数
				if (self.options.callBack) {
					self.options.callBack(inputValue);
				}
			// 伪监听结束
		}
	}
	
	//将插件暴露到作用域
	if (typeof module !== "undefined" && module.exports) {
		module.exports = basicPlugin;
	} else if (typeof define === "function" && define.amd) {
		define(function() {
			return basicPlugin;
		});
	} else {
		window.basicPlugin = basicPlugin;
	}

}(window, document))
